<!DOCTYPE html>
<html lang="zh_CN">
<head>
  <meta charset="utf-8"/>
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <title>问卷列表</title>
  <link rel="stylesheet" href="${ctxPath}/assets/libs/layui/css/layui.css"/>
  <link rel="stylesheet" href="${ctxPath}/assets/module/admin.css">
  <!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
  <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  <![endif]-->
</head>
<body>
<!-- 正文开始 -->
<div class="layui-fluid">
  <div class="layui-card">
    <div class="layui-card-body">
      <!-- 表格工具栏 -->
      <form class="layui-form toolbar">
        <div class="layui-form-item">
          <div class="layui-inline">
            <label class="layui-form-label">试卷名称:</label>
            <div class="layui-input-inline">
              <input name="title" class="layui-input" placeholder="请输入试卷名称"/>
            </div>
          </div>
          <div class="layui-inline">
            <label class="layui-form-label">问卷对象:</label>
            <div class="layui-input-inline">
              <input name="username" class="layui-input" placeholder="请输入试卷类型"/>
            </div>
          </div>

          <div class="layui-inline">&emsp;
            <button class="layui-btn icon-btn" lay-filter="tableSearch" lay-submit>
              <i class="layui-icon">&#xe615;</i>搜索
            </button>
            <button type="reset" class="layui-btn layui-btn-primary icon-btn">
              <i class="layui-icon">&#xe669;</i>重置
            </button>
          </div>
        </div>
      </form>
      <!-- 数据表格 -->
      <table id="dataTable" lay-filter="dataTable"></table>
    </div>
  </div>
</div>

<!-- 表格操作列 -->
<script type="text/html" id="tableBar">
  <a class="layui-btn  layui-btn-xs" perm-show="testpaper:testpaper_view" lay-event="preview"><i class="layui-icon">&#xe615;</i>预览</a>
<!--  <a class="layui-btn  layui-btn-xs" perm-show="testpaper:dataAnaly" lay-event="dataAnaly"><i class="layui-icon">&#xe615;</i>数据分析</a>-->
</script>

<!-- js部分 -->
<script src="${ctxPath}/assets/libs/layui/layui.js"></script>
<script src="${ctxPath}/assets/js/common.js"></script>
<script>
  layui.use(['layer', 'table', 'tableX', 'notice', 'xnUtil', 'laydate'], function () {
    var $ = layui.jquery;
    var layer = layui.layer;
    var table = layui.table;
    var tableX = layui.tableX;
    var admin = layui.admin;
    var form = layui.form;
    var notice = layui.notice;
    var xnUtil = layui.xnUtil;
    var laydate = layui.laydate;


    /* 渲染表格 */
    var insTb = tableX.render({
      elem: '#dataTable',
      url: getProjectUrl() + 'testpaper/pageRecorde',
      page: true,
     /* toolbar: ['<p>',
        '<button lay-event="add" perm-show="testpaper:add" class="layui-btn layui-btn-sm icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>&nbsp;',
        '<button lay-event="delete" perm-show="testpaper:delete" class="layui-btn layui-btn-sm layui-btn-danger icon-btn"><i class="layui-icon">&#xe640;</i>删除</button>',
        '</p>'].join(''),*/
      cellMinWidth: 100,
      cols: [
        [
          {type: 'checkbox'},
          {field: 'title', title: '试卷名称', sort: true},
          {field: 'papertype', title: '试卷类型', sort: true},
          {field: 'name', title: '问卷对象', sort: true},
           {field: 'ctime', title: '问卷时间', sort: true},
          {field: 'remarks', title: '试卷说明', sort: true},
          {title: '操作', toolbar: '#tableBar', align: 'center', width: 300, minWidth: 100}
        ]
      ],
      done: function(res, curr, count) {
        xnUtil.tableDone(insTb, res, curr, count);
      }
    });

    /* 表格搜索 */
    form.on('submit(tableSearch)', function (data) {
      insTb.reload({where: data.field, page: {curr: 1}});
      return false;
    });

    /* 表格工具条点击事件 */
    table.on('tool(dataTable)', function (obj) {
      /* 删除 */
      if (obj.event === 'delete') {
        layer.confirm('确定要操作该数据吗？', {
          skin: 'layui-layer-admin',
          shade: .1
        }, function () {
          admin.req(getProjectUrl() + 'testpaper/delete', JSON.stringify([{'testpaperId': obj.data.testpaperId}]), function(res){
            layer.msg(res.message, {icon: 1, time: 1000}, function () {
              insTb.reload();
            });
          }, 'post');
        });
      }
      /* 编辑 */
      if (obj.event === 'edit') {
        showAddOrUpdateModel(obj.data);
      }
      if(obj.event === 'preview'){
        var layIndex = admin.open({
          offset: '0px',
          title: '预览',
          area: ['850px', '650px'],
          url: getProjectUrl() + 'testpaper/testpaper_view',
          data: {data:obj.data},
          // 传递数据到表单页面
          end: function () {
            var layerData = admin.getLayerData(layIndex, 'formOk');
            if (layerData) {  // 判断表单操作成功标识
              var resultData = admin.getLayerData(layIndex, 'resultData');
              if(data) {
                for (var i = 0; i < extTableData.length; i++) {
                  if (extTableData[i].orgId === data.orgId && extTableData[i].posId === data.posId) {
                    extTableData.splice(i, 1, resultData);
                  }
                }
              } else {
                extTableData.push(resultData);
              }

              insExtTb.reload({data: extTableData}); // 成功刷新表格
            }
          },
          success: function (layero, dIndex) {
            // 弹窗超出范围不出现滚动条
            $(layero).children('.layui-layer-content').css('overflow', 'visible');
            $(layero).find('[lay-submit]').focus();
          },

        });
      }

      if(obj.event === 'dataAnaly'){
        var layIndex = admin.open({
          offset: '0px',
          title: '问卷分析',
          url: getProjectUrl() + 'testpaper/dataAnaly',
          area: ['1000px','600px'],
          //data: { data: data },     // 传递数据到表单页面
          end: function () {
            var layerData = admin.getLayerData(layIndex, 'formOk');
            if (layerData) {  // 判断表单操作成功标识
              insTb.reload();  // 成功刷新表格
            }
          },
          success: function (layero, dIndex) {
            // 弹窗超出范围不出现滚动条
            $(layero).children('.layui-layer-content').css('overflow', 'visible');
            $(layero).find('[lay-submit]').focus();
          }
        });
      }

      if(obj.event === 'print'){
        layer.confirm('确定要发放此试卷吗？', {
          skin: 'layui-layer-admin',
          icon:0,
          shade: .2
        }, function () {
          admin.req(getProjectUrl() + 'testpaper/editState', JSON.stringify({'testpaperId': obj.data.testpaperId,'state':'release'}), function(res){
            layer.msg(res.message, {icon: 1, time: 1000}, function () {
              insTb.reload();
            });
          }, 'post');
        });
      }
    });

    /* 表格头工具栏点击事件 */
    table.on('toolbar(dataTable)', function (obj) {
      if (obj.event === 'add') { // 添加
        showAddOrUpdateModel();
      }
      if (obj.event === 'delete') { // 删除
        var checkRows = table.checkStatus('dataTable');
        if (checkRows.data.length === 0) {
          notice.msg('请选择要操作的数据', {icon: 2});
          return;
        }
        layer.confirm('确定要操作该数据吗？', {
          skin: 'layui-layer-admin',
          shade: .1
        }, function () {
          var ids = checkRows.data.map(function (d) {
            return {"testpaperId": d.testpaperId};
          });
          admin.req(getProjectUrl() + 'testpaper/delete', JSON.stringify(ids), function(res){
            layer.msg(res.message, {icon: 1, time: 1000}, function () {
              insTb.reload();
            });
          }, 'post');
        });
      }
    });

    // 显示表单弹窗
    function showAddOrUpdateModel(data) {
      var layIndex = admin.open({
        offset: '0px',
        title: (data ? '修改' : '添加') + '问卷列表',
        url: getProjectUrl() + 'testpaper/form',
        area: ['900px','600px'],
        data: { data: data },     // 传递数据到表单页面
        end: function () {
          var layerData = admin.getLayerData(layIndex, 'formOk');
          if (layerData) {  // 判断表单操作成功标识
            insTb.reload();  // 成功刷新表格
          }
        },
        success: function (layero, dIndex) {
          // 弹窗超出范围不出现滚动条
          $(layero).children('.layui-layer-content').css('overflow', 'visible');
          $(layero).find('[lay-submit]').focus();
        }
      });
    }
  });
</script>
</body>
</html>
